#ifndef ONEEVENTFRAME_H
#define ONEEVENTFRAME_H

#include <QWidget>
#include<QGridLayout>
#include<QRadioButton>
#include<QComboBox>
#include<QPushButton>
#include<QLineEdit>
#include<QGroupBox>
#include<QScrollArea>
#include<QLabel>
#include<Util/ConversionMethods.h>
#include<QDir>
#include<QApplication>
#include<Util/get_setInfo.h>
#include<QDebug>
#include<QToolTip>
#include<QHelpEvent>
#include<QMouseEvent>
#include<QStandardItem>
#include<QStandardItemModel>
#include<Util/PathUtil.h>
#include<Util/CMethodsInfo.h>
/**
 * @brief The oneEventFrame class ,构建一个事件的配置界面
 */
class oneEventFrame : public QWidget
{
    Q_OBJECT
public:
    explicit oneEventFrame(QWidget *parent = 0);
    oneEventFrame(QVBoxLayout *InWidgetLayout, QString ProjectPath, QString EventName, QString EventType, QList<CMethodsInfo *> *MethodList, int Index, QWidget *parent = 0);
    QString getMethodName();
    QString getFileRelativePath();
    QString getEventName();
    QString getEventType();
    QString getMethodFoldPath();

    QGroupBox *oneFrame;

    void setProperties(QString MethodFilePath, QString DataRelativePath);
signals:
    void sendDescInfo(QString);

public slots:
    void on_InternalMethod_Changed(QString internalMethodName);

private:
    int index;
    int RadioIndex;
    QString MethodName;
    QString EventName;
    QString EventType;
    QString MethodFoldPath;
    QStringList MethodList;

    QLineEdit   *MethodFilePath;
    QPushButton *ChooseConversionMethod;
    QLineEdit   *FileRelativePath;
    QVBoxLayout *inWidgetLayout;
    QComboBox *InternalComboBox;
    QList<CMethodsInfo *> *mConversionMethods;

    QString mProjectPath;

     void initWidget();

};

#endif // ONEEVENTFRAME_H
